/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.escom.administracion.dao.hibernate;

import com.escom.administracion.dao.DocenteDAO;
import com.escom.administracionperfiles.hbm.dto.Docente;
import com.escom.cliente.exception.DAOException;
import com.escom.hibernate.template.AdminSoportHibernate;
import java.io.Serializable;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;

/**
 *
 * @author yamil
 */
public class DocenteDAOHBM extends AdminSoportHibernate implements DocenteDAO,Serializable{

    public void create(Docente docente) throws DAOException {
       save(docente);
    }

    @Override
    public void edit(Docente docente) throws DAOException {
       update(docente);
    }

    @Override
    public void remove(Docente docente) throws DAOException {
       delete(docente);
    }

    @Override
    public Docente find(Object id) throws DAOException {
       return find(id);
    }

    @Override
    public List<Docente> findAll() throws DAOException {
       return findAll(Docente.class);
    }

    @Override
    public int count() {
       return count();
    }

    @Override
    public boolean findDocenteByBoletaAndCorreo(Integer boleta, String correo) throws DAOException {
        Docente docente=null;
        Criteria criteria = getSession().createCriteria(Docente.class);
        criteria.add(Restrictions.and(Restrictions.eq("correo", correo), Restrictions.eq("boleta", boleta))).setMaxResults(1);
        if(!criteria.list().isEmpty())
        docente=(Docente)criteria.list().get(0);
        return docente!=null?true:false;//SI ES TRUE  QUIERE DECIR QUE SI EXISTE ALGUIEN CON ESOS DATOS,FALSO LO CONTRARIO
    }

}
